﻿using System;
namespace Producers.Rr.Xtee.Riik.Ee.Producer.Rr {
    
    
    public partial class RR86Response : global::Producers.Rr.Xtee.Riik.Ee.Producer.Rr.IRR86Response {
        
        private string @__isikuIsikukood;
        
        private string @__isikuEesnimi;
        
        private string @__isikuPerenimi;
        
        private string @__isikuStaatus;
        
        private string @__isikuTeovoime;
        
        private decimal @__veakood;
        
        private string @__veatekst;
        
        private System.Collections.Generic.List<RR86Response.IDokumendiandmedType> @__dokumendiandmed = new System.Collections.Generic.List<RR86Response.IDokumendiandmedType>();
        
        private System.Collections.Generic.List<RR86Response.ISuheType> @__suhe = new System.Collections.Generic.List<RR86Response.ISuheType>();
        
        public RR86Response() {
        }
        
        /// <summary>
        /// All parameters
        /// </summary>
        public RR86Response(string @isikuIsikukood, string @isikuEesnimi, string @isikuPerenimi, string @isikuStaatus, string @isikuTeovoime, decimal @veakood, string @veatekst, System.Collections.Generic.List<RR86Response.IDokumendiandmedType> @dokumendiandmed, System.Collections.Generic.List<RR86Response.ISuheType> @suhe) {
            this.@__isikuIsikukood = @isikuIsikukood;
            this.@__isikuEesnimi = @isikuEesnimi;
            this.@__isikuPerenimi = @isikuPerenimi;
            this.@__isikuStaatus = @isikuStaatus;
            this.@__isikuTeovoime = @isikuTeovoime;
            this.@__veakood = @veakood;
            this.@__veatekst = @veatekst;
            this.@__dokumendiandmed = @dokumendiandmed;
            this.@__suhe = @suhe;
        }
        
        /// <summary>
        /// Copy Constructor
        /// </summary>
        protected RR86Response(IRR86Response @rR86Response) {
            this.@__isikuIsikukood = @rR86Response.IsikuIsikukood;
            this.@__isikuEesnimi = @rR86Response.IsikuEesnimi;
            this.@__isikuPerenimi = @rR86Response.IsikuPerenimi;
            this.@__isikuStaatus = @rR86Response.IsikuStaatus;
            this.@__isikuTeovoime = @rR86Response.IsikuTeovoime;
            this.@__veakood = @rR86Response.Veakood;
            this.@__veatekst = @rR86Response.Veatekst;
            this.@__dokumendiandmed = @rR86Response.Dokumendiandmed;
            this.@__suhe = @rR86Response.Suhe;
        }
        
        public virtual string IsikuIsikukood {
            get {
                return this.@__isikuIsikukood;
            }
            set {
                this.@__isikuIsikukood = value;
            }
        }
        
        public virtual string IsikuEesnimi {
            get {
                return this.@__isikuEesnimi;
            }
            set {
                this.@__isikuEesnimi = value;
            }
        }
        
        public virtual string IsikuPerenimi {
            get {
                return this.@__isikuPerenimi;
            }
            set {
                this.@__isikuPerenimi = value;
            }
        }
        
        public virtual string IsikuStaatus {
            get {
                return this.@__isikuStaatus;
            }
            set {
                this.@__isikuStaatus = value;
            }
        }
        
        public virtual string IsikuTeovoime {
            get {
                return this.@__isikuTeovoime;
            }
            set {
                this.@__isikuTeovoime = value;
            }
        }
        
        public virtual decimal Veakood {
            get {
                return this.@__veakood;
            }
            set {
                this.@__veakood = value;
            }
        }
        
        public virtual string Veatekst {
            get {
                return this.@__veatekst;
            }
            set {
                this.@__veatekst = value;
            }
        }
        
        public virtual System.Collections.Generic.List<RR86Response.IDokumendiandmedType> Dokumendiandmed {
            get {
                return this.@__dokumendiandmed;
            }
            set {
                this.@__dokumendiandmed = value;
            }
        }
        
        public virtual System.Collections.Generic.List<RR86Response.ISuheType> Suhe {
            get {
                return this.@__suhe;
            }
            set {
                this.@__suhe = value;
            }
        }
        
        public partial class DokumendiandmedType : IDokumendiandmedType {
            
            private string @__dokumendiandmedKood;
            
            private string @__dokumendiandmedNimetus;
            
            private string @__dokumendiandmedSeeria;
            
            private string @__dokumendiandmedNumber;
            
            private string @__dokumendiandmedDokStaatus;
            
            private string @__dokumendiandmedAsutus;
            
            private string @__dokumendiandmedDokValjastamisKuup;
            
            private string @__dokumendiandmedKehtivAlates;
            
            private string @__dokumendiandmedKehtivKuni;
            
            private string @__dokumendiandmedDokIsikukood;
            
            private string @__dokumendiandmedDokPerekonnanimi;
            
            private string @__dokumendiandmedDokEesnimi;
            
            private string @__dokumendiandmedDokOsalus;
            
            public DokumendiandmedType() {
            }
            
            /// <summary>
            /// All parameters
            /// </summary>
            public DokumendiandmedType(string @dokumendiandmedKood, string @dokumendiandmedNimetus, string @dokumendiandmedSeeria, string @dokumendiandmedNumber, string @dokumendiandmedDokStaatus, string @dokumendiandmedAsutus, string @dokumendiandmedDokValjastamisKuup, string @dokumendiandmedKehtivAlates, string @dokumendiandmedKehtivKuni, string @dokumendiandmedDokIsikukood, string @dokumendiandmedDokPerekonnanimi, string @dokumendiandmedDokEesnimi, string @dokumendiandmedDokOsalus) {
                this.@__dokumendiandmedKood = @dokumendiandmedKood;
                this.@__dokumendiandmedNimetus = @dokumendiandmedNimetus;
                this.@__dokumendiandmedSeeria = @dokumendiandmedSeeria;
                this.@__dokumendiandmedNumber = @dokumendiandmedNumber;
                this.@__dokumendiandmedDokStaatus = @dokumendiandmedDokStaatus;
                this.@__dokumendiandmedAsutus = @dokumendiandmedAsutus;
                this.@__dokumendiandmedDokValjastamisKuup = @dokumendiandmedDokValjastamisKuup;
                this.@__dokumendiandmedKehtivAlates = @dokumendiandmedKehtivAlates;
                this.@__dokumendiandmedKehtivKuni = @dokumendiandmedKehtivKuni;
                this.@__dokumendiandmedDokIsikukood = @dokumendiandmedDokIsikukood;
                this.@__dokumendiandmedDokPerekonnanimi = @dokumendiandmedDokPerekonnanimi;
                this.@__dokumendiandmedDokEesnimi = @dokumendiandmedDokEesnimi;
                this.@__dokumendiandmedDokOsalus = @dokumendiandmedDokOsalus;
            }
            
            /// <summary>
            /// Copy Constructor
            /// </summary>
            protected DokumendiandmedType(IDokumendiandmedType @dokumendiandmedType) {
                this.@__dokumendiandmedKood = @dokumendiandmedType.DokumendiandmedKood;
                this.@__dokumendiandmedNimetus = @dokumendiandmedType.DokumendiandmedNimetus;
                this.@__dokumendiandmedSeeria = @dokumendiandmedType.DokumendiandmedSeeria;
                this.@__dokumendiandmedNumber = @dokumendiandmedType.DokumendiandmedNumber;
                this.@__dokumendiandmedDokStaatus = @dokumendiandmedType.DokumendiandmedDokStaatus;
                this.@__dokumendiandmedAsutus = @dokumendiandmedType.DokumendiandmedAsutus;
                this.@__dokumendiandmedDokValjastamisKuup = @dokumendiandmedType.DokumendiandmedDokValjastamisKuup;
                this.@__dokumendiandmedKehtivAlates = @dokumendiandmedType.DokumendiandmedKehtivAlates;
                this.@__dokumendiandmedKehtivKuni = @dokumendiandmedType.DokumendiandmedKehtivKuni;
                this.@__dokumendiandmedDokIsikukood = @dokumendiandmedType.DokumendiandmedDokIsikukood;
                this.@__dokumendiandmedDokPerekonnanimi = @dokumendiandmedType.DokumendiandmedDokPerekonnanimi;
                this.@__dokumendiandmedDokEesnimi = @dokumendiandmedType.DokumendiandmedDokEesnimi;
                this.@__dokumendiandmedDokOsalus = @dokumendiandmedType.DokumendiandmedDokOsalus;
            }
            
            public virtual string DokumendiandmedKood {
                get {
                    return this.@__dokumendiandmedKood;
                }
                set {
                    this.@__dokumendiandmedKood = value;
                }
            }
            
            public virtual string DokumendiandmedNimetus {
                get {
                    return this.@__dokumendiandmedNimetus;
                }
                set {
                    this.@__dokumendiandmedNimetus = value;
                }
            }
            
            public virtual string DokumendiandmedSeeria {
                get {
                    return this.@__dokumendiandmedSeeria;
                }
                set {
                    this.@__dokumendiandmedSeeria = value;
                }
            }
            
            public virtual string DokumendiandmedNumber {
                get {
                    return this.@__dokumendiandmedNumber;
                }
                set {
                    this.@__dokumendiandmedNumber = value;
                }
            }
            
            public virtual string DokumendiandmedDokStaatus {
                get {
                    return this.@__dokumendiandmedDokStaatus;
                }
                set {
                    this.@__dokumendiandmedDokStaatus = value;
                }
            }
            
            public virtual string DokumendiandmedAsutus {
                get {
                    return this.@__dokumendiandmedAsutus;
                }
                set {
                    this.@__dokumendiandmedAsutus = value;
                }
            }
            
            public virtual string DokumendiandmedDokValjastamisKuup {
                get {
                    return this.@__dokumendiandmedDokValjastamisKuup;
                }
                set {
                    this.@__dokumendiandmedDokValjastamisKuup = value;
                }
            }
            
            public virtual string DokumendiandmedKehtivAlates {
                get {
                    return this.@__dokumendiandmedKehtivAlates;
                }
                set {
                    this.@__dokumendiandmedKehtivAlates = value;
                }
            }
            
            public virtual string DokumendiandmedKehtivKuni {
                get {
                    return this.@__dokumendiandmedKehtivKuni;
                }
                set {
                    this.@__dokumendiandmedKehtivKuni = value;
                }
            }
            
            public virtual string DokumendiandmedDokIsikukood {
                get {
                    return this.@__dokumendiandmedDokIsikukood;
                }
                set {
                    this.@__dokumendiandmedDokIsikukood = value;
                }
            }
            
            public virtual string DokumendiandmedDokPerekonnanimi {
                get {
                    return this.@__dokumendiandmedDokPerekonnanimi;
                }
                set {
                    this.@__dokumendiandmedDokPerekonnanimi = value;
                }
            }
            
            public virtual string DokumendiandmedDokEesnimi {
                get {
                    return this.@__dokumendiandmedDokEesnimi;
                }
                set {
                    this.@__dokumendiandmedDokEesnimi = value;
                }
            }
            
            public virtual string DokumendiandmedDokOsalus {
                get {
                    return this.@__dokumendiandmedDokOsalus;
                }
                set {
                    this.@__dokumendiandmedDokOsalus = value;
                }
            }
        }
        
        public interface IDokumendiandmedType {
            
            string DokumendiandmedKood {
                get;
                set;
            }
            
            string DokumendiandmedNimetus {
                get;
                set;
            }
            
            string DokumendiandmedSeeria {
                get;
                set;
            }
            
            string DokumendiandmedNumber {
                get;
                set;
            }
            
            string DokumendiandmedDokStaatus {
                get;
                set;
            }
            
            string DokumendiandmedAsutus {
                get;
                set;
            }
            
            string DokumendiandmedDokValjastamisKuup {
                get;
                set;
            }
            
            string DokumendiandmedKehtivAlates {
                get;
                set;
            }
            
            string DokumendiandmedKehtivKuni {
                get;
                set;
            }
            
            string DokumendiandmedDokIsikukood {
                get;
                set;
            }
            
            string DokumendiandmedDokPerekonnanimi {
                get;
                set;
            }
            
            string DokumendiandmedDokEesnimi {
                get;
                set;
            }
            
            string DokumendiandmedDokOsalus {
                get;
                set;
            }
        }
        
        public partial class SuheType : ISuheType {
            
            private string @__suheSuhtetyyp;
            
            private string @__suheIsikukood;
            
            private string @__suhePerenimi;
            
            private string @__suheEesnimi;
            
            private string @__suheIsikuStaatus;
            
            private string @__suheIsikuTeovoime;
            
            private string @__suheAlguskp;
            
            public SuheType() {
            }
            
            /// <summary>
            /// All parameters
            /// </summary>
            public SuheType(string @suheSuhtetyyp, string @suheIsikukood, string @suhePerenimi, string @suheEesnimi, string @suheIsikuStaatus, string @suheIsikuTeovoime, string @suheAlguskp) {
                this.@__suheSuhtetyyp = @suheSuhtetyyp;
                this.@__suheIsikukood = @suheIsikukood;
                this.@__suhePerenimi = @suhePerenimi;
                this.@__suheEesnimi = @suheEesnimi;
                this.@__suheIsikuStaatus = @suheIsikuStaatus;
                this.@__suheIsikuTeovoime = @suheIsikuTeovoime;
                this.@__suheAlguskp = @suheAlguskp;
            }
            
            /// <summary>
            /// Copy Constructor
            /// </summary>
            protected SuheType(ISuheType @suheType) {
                this.@__suheSuhtetyyp = @suheType.SuheSuhtetyyp;
                this.@__suheIsikukood = @suheType.SuheIsikukood;
                this.@__suhePerenimi = @suheType.SuhePerenimi;
                this.@__suheEesnimi = @suheType.SuheEesnimi;
                this.@__suheIsikuStaatus = @suheType.SuheIsikuStaatus;
                this.@__suheIsikuTeovoime = @suheType.SuheIsikuTeovoime;
                this.@__suheAlguskp = @suheType.SuheAlguskp;
            }
            
            public virtual string SuheSuhtetyyp {
                get {
                    return this.@__suheSuhtetyyp;
                }
                set {
                    this.@__suheSuhtetyyp = value;
                }
            }
            
            public virtual string SuheIsikukood {
                get {
                    return this.@__suheIsikukood;
                }
                set {
                    this.@__suheIsikukood = value;
                }
            }
            
            public virtual string SuhePerenimi {
                get {
                    return this.@__suhePerenimi;
                }
                set {
                    this.@__suhePerenimi = value;
                }
            }
            
            public virtual string SuheEesnimi {
                get {
                    return this.@__suheEesnimi;
                }
                set {
                    this.@__suheEesnimi = value;
                }
            }
            
            public virtual string SuheIsikuStaatus {
                get {
                    return this.@__suheIsikuStaatus;
                }
                set {
                    this.@__suheIsikuStaatus = value;
                }
            }
            
            public virtual string SuheIsikuTeovoime {
                get {
                    return this.@__suheIsikuTeovoime;
                }
                set {
                    this.@__suheIsikuTeovoime = value;
                }
            }
            
            public virtual string SuheAlguskp {
                get {
                    return this.@__suheAlguskp;
                }
                set {
                    this.@__suheAlguskp = value;
                }
            }
        }
        
        public interface ISuheType {
            
            string SuheSuhtetyyp {
                get;
                set;
            }
            
            string SuheIsikukood {
                get;
                set;
            }
            
            string SuhePerenimi {
                get;
                set;
            }
            
            string SuheEesnimi {
                get;
                set;
            }
            
            string SuheIsikuStaatus {
                get;
                set;
            }
            
            string SuheIsikuTeovoime {
                get;
                set;
            }
            
            string SuheAlguskp {
                get;
                set;
            }
        }
    }
}
